home *** CD-ROM | disk | FTP | other *** search
Java Class File | 2000-04-03 | 2.7 KB |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: Java Class File
(other/javaClass).
This format is not currently supported by dexvert.
Confidence | Program | Detection | Match Type | Support
|
---|
1%
| dexvert
| Java Class File (other/javaClass)
| magic
| Unsupported |
100%
| file
| compiled Java class data, version 45.3
| default
| |
99%
| file
| data
| default
| |
100%
| TrID
| Java bytecode
| default
| |
100%
| gt2
| Kompilierter Java Bytecode
| default
| |
100%
| disktype
| FAT32 file system (hints score 0 of 5) Volume size off the scale (18446744072311191552 bytes, 18446744073706820444 clusters of 512 bytes)
| default (weak)
| |
100%
| detectItEasy
| Format: Java Class File (.CLASS)(JDK 1.1.3)
| default
| |
100%
| detectItEasy
| Format: Universal Binary
| default (weak)
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| ca fe ba be 00 03 00 2d | 00 8c 07 00 02 01 00 1c |.......-|........|
|00000010| 6a 61 76 61 78 2f 73 65 | 72 76 6c 65 74 2f 68 74 |javax/se|rvlet/ht|
|00000020| 74 70 2f 48 74 74 70 55 | 74 69 6c 73 07 00 04 01 |tp/HttpU|tils....|
|00000030| 00 10 6a 61 76 61 2f 6c | 61 6e 67 2f 4f 62 6a 65 |..java/l|ang/Obje|
|00000040| 63 74 01 00 10 70 61 72 | 73 65 51 75 65 72 79 53 |ct...par|seQueryS|
|00000050| 74 72 69 6e 67 01 00 29 | 28 4c 6a 61 76 61 2f 6c |tring..)|(Ljava/l|
|00000060| 61 6e 67 2f 53 74 72 69 | 6e 67 3b 29 4c 6a 61 76 |ang/Stri|ng;)Ljav|
|00000070| 61 2f 75 74 69 6c 2f 48 | 61 73 68 74 61 62 6c 65 |a/util/H|ashtable|
|00000080| 3b 01 00 0a 45 78 63 65 | 70 74 69 6f 6e 73 07 00 |;...Exce|ptions..|
|00000090| 09 01 00 22 6a 61 76 61 | 2f 6c 61 6e 67 2f 49 6c |..."java|/lang/Il|
|000000a0| 6c 65 67 61 6c 41 72 67 | 75 6d 65 6e 74 45 78 63 |legalArg|umentExc|
|000000b0| 65 70 74 69 6f 6e 01 00 | 04 43 6f 64 65 01 00 0f |eption..|.Code...|
|000000c0| 4c 69 6e 65 4e 75 6d 62 | 65 72 54 61 62 6c 65 0c |LineNumb|erTable.|
|000000d0| 00 0d 00 0e 01 00 06 3c | 69 6e 69 74 3e 01 00 03 |.......<|init>...|
|000000e0| 28 29 56 0a 00 08 00 0c | 07 00 11 01 00 13 6a 61 |()V.....|......ja|
|000000f0| 76 61 2f 75 74 69 6c 2f | 48 61 73 68 74 61 62 6c |va/util/|Hashtabl|
|00000100| 65 0a 00 10 00 0c 0c 00 | 14 00 15 01 00 07 69 6e |e.......|......in|
|00000110| 64 65 78 4f 66 01 00 05 | 28 49 49 29 49 0a 00 17 |dexOf...|(II)I...|
|00000120| 00 13 07 00 18 01 00 10 | 6a 61 76 61 2f 6c 61 6e |........|java/lan|
|00000130| 67 2f 53 74 72 69 6e 67 | 0c 00 1a 00 1b 01 00 06 |g/String|........|
|00000140| 6c 65 6e 67 74 68 01 00 | 03 28 29 49 0a 00 17 00 |length..|.()I....|
|00000150| 19 0c 00 1e 00 1f 01 00 | 09 75 72 6c 44 65 63 6f |........|.urlDeco|
|00000160| 64 65 01 00 28 28 4c 6a | 61 76 61 2f 6c 61 6e 67 |de..((Lj|ava/lang|
|00000170| 2f 53 74 72 69 6e 67 3b | 49 49 29 4c 6a 61 76 61 |/String;|II)Ljava|
|00000180| 2f 6c 61 6e 67 2f 53 74 | 72 69 6e 67 3b 0a 00 01 |/lang/St|ring;...|
|00000190| 00 1d 08 00 22 01 00 00 | 0c 00 24 00 25 01 00 0c |...."...|..$.%...|
|000001a0| 61 64 64 50 61 72 61 6d | 65 74 65 72 01 00 3c 28 |addParam|eter..<(|
|000001b0| 4c 6a 61 76 61 2f 75 74 | 69 6c 2f 48 61 73 68 74 |Ljava/ut|il/Hasht|
|000001c0| 61 62 6c 65 3b 4c 6a 61 | 76 61 2f 6c 61 6e 67 2f |able;Lja|va/lang/|
|000001d0| 53 74 72 69 6e 67 3b 4c | 6a 61 76 61 2f 6c 61 6e |String;L|java/lan|
|000001e0| 67 2f 53 74 72 69 6e 67 | 3b 29 56 0a 00 01 00 23 |g/String|;)V....#|
|000001f0| 0c 00 28 00 29 01 00 03 | 67 65 74 01 00 26 28 4c |..(.)...|get..&(L|
|00000200| 6a 61 76 61 2f 6c 61 6e | 67 2f 4f 62 6a 65 63 74 |java/lan|g/Object|
|00000210| 3b 29 4c 6a 61 76 61 2f | 6c 61 6e 67 2f 4f 62 6a |;)Ljava/|lang/Obj|
|00000220| 65 63 74 3b 0a 00 10 00 | 27 07 00 2c 01 00 13 5b |ect;....|'..,...[|
|00000230| 4c 6a 61 76 61 2f 6c 61 | 6e 67 2f 53 74 72 69 6e |Ljava/la|ng/Strin|
|00000240| 67 3b 0c 00 2e 00 2f 01 | 00 09 61 72 72 61 79 63 |g;..../.|..arrayc|
|00000250| 6f 70 79 01 00 2a 28 4c | 6a 61 76 61 2f 6c 61 6e |opy..*(L|java/lan|
|00000260| 67 2f 4f 62 6a 65 63 74 | 3b 49 4c 6a 61 76 61 2f |g/Object|;ILjava/|
|00000270| 6c 61 6e 67 2f 4f 62 6a | 65 63 74 3b 49 49 29 56 |lang/Obj|ect;II)V|
|00000280| 0a 00 31 00 2d 07 00 32 | 01 00 10 6a 61 76 61 2f |..1.-..2|...java/|
|00000290| 6c 61 6e 67 2f 53 79 73 | 74 65 6d 0c 00 34 00 35 |lang/Sys|tem..4.5|
|000002a0| 01 00 03 70 75 74 01 00 | 38 28 4c 6a 61 76 61 2f |...put..|8(Ljava/|
|000002b0| 6c 61 6e 67 2f 4f 62 6a | 65 63 74 3b 4c 6a 61 76 |lang/Obj|ect;Ljav|
|000002c0| 61 2f 6c 61 6e 67 2f 4f | 62 6a 65 63 74 3b 29 4c |a/lang/O|bject;)L|
|000002d0| 6a 61 76 61 2f 6c 61 6e | 67 2f 4f 62 6a 65 63 74 |java/lan|g/Object|
|000002e0| 3b 0a 00 10 00 33 07 00 | 38 01 00 1e 6a 61 76 61 |;....3..|8...java|
|000002f0| 2f 6c 61 6e 67 2f 4e 75 | 6c 6c 50 6f 69 6e 74 65 |/lang/Nu|llPointe|
|00000300| 72 45 78 63 65 70 74 69 | 6f 6e 07 00 3a 01 00 16 |rExcepti|on..:...|
|00000310| 6a 61 76 61 2f 6c 61 6e | 67 2f 53 74 72 69 6e 67 |java/lan|g/String|
|00000320| 42 75 66 66 65 72 0c 00 | 0d 00 3c 01 00 04 28 49 |Buffer..|..<...(I|
|00000330| 29 56 0a 00 39 00 3b 0c | 00 3f 00 40 01 00 06 63 |)V..9.;.|.?.@...c|
|00000340| 68 61 72 41 74 01 00 04 | 28 49 29 43 0a 00 17 00 |harAt...|(I)C....|
|00000350| 3e 08 00 43 01 00 01 20 | 0c 00 45 00 46 01 00 06 |>..C... |..E.F...|
|00000360| 61 70 70 65 6e 64 01 00 | 2c 28 4c 6a 61 76 61 2f |append..|,(Ljava/|
|00000370| 6c 61 6e 67 2f 53 74 72 | 69 6e 67 3b 29 4c 6a 61 |lang/Str|ing;)Lja|
|00000380| 76 61 2f 6c 61 6e 67 2f | 53 74 72 69 6e 67 42 75 |va/lang/|StringBu|
|00000390| 66 66 65 72 3b 0a 00 39 | 00 44 0c 00 49 00 4a 01 |ffer;..9|.D..I.J.|
|000003a0| 00 09 73 75 62 73 74 72 | 69 6e 67 01 00 16 28 49 |..substr|ing...(I|
|000003b0| 49 29 4c 6a 61 76 61 2f | 6c 61 6e 67 2f 53 74 72 |I)Ljava/|lang/Str|
|000003c0| 69 6e 67 3b 0a 00 17 00 | 48 0c 00 4d 00 4e 01 00 |ing;....|H..M.N..|
|000003d0| 08 70 61 72 73 65 49 6e | 74 01 00 16 28 4c 6a 61 |.parseIn|t...(Lja|
|000003e0| 76 61 2f 6c 61 6e 67 2f | 53 74 72 69 6e 67 3b 49 |va/lang/|String;I|
|000003f0| 29 49 0a 00 50 00 4c 07 | 00 51 01 00 11 6a 61 76 |)I..P.L.|.Q...jav|
|00000400| 61 2f 6c 61 6e 67 2f 49 | 6e 74 65 67 65 72 0c 00 |a/lang/I|nteger..|
|00000410| 45 00 53 01 00 1b 28 43 | 29 4c 6a 61 76 61 2f 6c |E.S...(C|)Ljava/l|
|00000420| 61 6e 67 2f 53 74 72 69 | 6e 67 42 75 66 66 65 72 |ang/Stri|ngBuffer|
|00000430| 3b 0a 00 39 00 52 07 00 | 56 01 00 29 6a 61 76 61 |;..9.R..|V..)java|
|00000440| 2f 6c 61 6e 67 2f 53 74 | 72 69 6e 67 49 6e 64 65 |/lang/St|ringInde|
|00000450| 78 4f 75 74 4f 66 42 6f | 75 6e 64 73 45 78 63 65 |xOutOfBo|undsExce|
|00000460| 70 74 69 6f 6e 07 00 58 | 01 00 1f 6a 61 76 61 2f |ption..X|...java/|
|00000470| 6c 61 6e 67 2f 4e 75 6d | 62 65 72 46 6f 72 6d 61 |lang/Num|berForma|
|00000480| 74 45 78 63 65 70 74 69 | 6f 6e 0c 00 5a 00 5b 01 |tExcepti|on..Z.[.|
|00000490| 00 08 74 6f 53 74 72 69 | 6e 67 01 00 14 28 29 4c |..toStri|ng...()L|
|000004a0| 6a 61 76 61 2f 6c 61 6e | 67 2f 53 74 72 69 6e 67 |java/lan|g/String|
|000004b0| 3b 0a 00 39 00 59 01 00 | 0d 70 61 72 73 65 50 6f |;..9.Y..|.parsePo|
|000004c0| 73 74 44 61 74 61 01 00 | 3a 28 49 4c 6a 61 76 61 |stData..|:(ILjava|
|000004d0| 78 2f 73 65 72 76 6c 65 | 74 2f 53 65 72 76 6c 65 |x/servle|t/Servle|
|000004e0| 74 49 6e 70 75 74 53 74 | 72 65 61 6d 3b 29 4c 6a |tInputSt|ream;)Lj|
|000004f0| 61 76 61 2f 75 74 69 6c | 2f 48 61 73 68 74 61 62 |ava/util|/Hashtab|
|00000500| 6c 65 3b 0c 00 60 00 61 | 01 00 04 72 65 61 64 01 |le;..`.a|...read.|
|00000510| 00 07 28 5b 42 49 49 29 | 49 0a 00 63 00 5f 07 00 |..([BII)|I..c._..|
|00000520| 64 01 00 20 6a 61 76 61 | 78 2f 73 65 72 76 6c 65 |d.. java|x/servle|
|00000530| 74 2f 53 65 72 76 6c 65 | 74 49 6e 70 75 74 53 74 |t/Servle|tInputSt|
|00000540| 72 65 61 6d 08 00 66 01 | 00 17 45 72 72 6f 72 20 |ream..f.|..Error |
|00000550| 72 65 61 64 69 6e 67 20 | 50 4f 53 54 20 64 61 74 |reading |POST dat|
|00000560| 61 0c 00 0d 00 68 01 00 | 15 28 4c 6a 61 76 61 2f |a....h..|.(Ljava/|
|00000570| 6c 61 6e 67 2f 53 74 72 | 69 6e 67 3b 29 56 0a 00 |lang/Str|ing;)V..|
|00000580| 08 00 67 07 00 6b 01 00 | 13 6a 61 76 61 2f 69 6f |..g..k..|.java/io|
|00000590| 2f 49 4f 45 78 63 65 70 | 74 69 6f 6e 0c 00 0d 00 |/IOExcep|tion....|
|000005a0| 6d 01 00 05 28 5b 42 29 | 56 0a 00 17 00 6c 0c 00 |m...([B)|V....l..|
|000005b0| 05 00 06 0a 00 01 00 6f | 01 00 0d 67 65 74 52 65 |.......o|...getRe|
|000005c0| 71 75 65 73 74 55 52 4c | 01 00 41 28 4c 6a 61 76 |questURL|..A(Ljav|
|000005d0| 61 78 2f 73 65 72 76 6c | 65 74 2f 68 74 74 70 2f |ax/servl|et/http/|
|000005e0| 48 74 74 70 53 65 72 76 | 6c 65 74 52 65 71 75 65 |HttpServ|letReque|
|000005f0| 73 74 3b 29 4c 6a 61 76 | 61 2f 6c 61 6e 67 2f 53 |st;)Ljav|a/lang/S|
|00000600| 74 72 69 6e 67 42 75 66 | 66 65 72 3b 0a 00 39 00 |tringBuf|fer;..9.|
|00000610| 67 0c 00 75 00 5b 01 00 | 09 67 65 74 53 63 68 65 |g..u.[..|.getSche|
|00000620| 6d 65 0b 00 77 00 74 07 | 00 78 01 00 25 6a 61 76 |me..w.t.|.x..%jav|
|00000630| 61 78 2f 73 65 72 76 6c | 65 74 2f 68 74 74 70 2f |ax/servl|et/http/|
|00000640| 48 74 74 70 53 65 72 76 | 6c 65 74 52 65 71 75 65 |HttpServ|letReque|
|00000650| 73 74 08 00 7a 01 00 03 | 3a 2f 2f 0c 00 7c 00 5b |st..z...|://..|.[|
|00000660| 01 00 0d 67 65 74 53 65 | 72 76 65 72 4e 61 6d 65 |...getSe|rverName|
|00000670| 0b 00 77 00 7b 0c 00 7f | 00 1b 01 00 0d 67 65 74 |..w.{...|.....get|
|00000680| 53 65 72 76 65 72 50 6f | 72 74 0b 00 77 00 7e 08 |ServerPo|rt..w.~.|
|00000690| 00 82 01 00 01 3a 0c 00 | 45 00 84 01 00 1b 28 49 |.....:..|E.....(I|
|000006a0| 29 4c 6a 61 76 61 2f 6c | 61 6e 67 2f 53 74 72 69 |)Ljava/l|ang/Stri|
|000006b0| 6e 67 42 75 66 66 65 72 | 3b 0a 00 39 00 83 0c 00 |ngBuffer|;..9....|
|000006c0| 87 00 5b 01 00 0d 67 65 | 74 52 65 71 75 65 73 74 |..[...ge|tRequest|
|000006d0| 55 52 49 0b 00 77 00 86 | 0a 00 03 00 0c 01 00 0a |URI..w..|........|
|000006e0| 53 6f 75 72 63 65 46 69 | 6c 65 01 00 0e 48 74 74 |SourceFi|le...Htt|
|000006f0| 70 55 74 69 6c 73 2e 6a | 61 76 61 00 21 00 01 00 |pUtils.j|ava.!...|
|00000700| 03 00 00 00 00 00 06 00 | 09 00 05 00 06 00 02 00 |........|........|
|00000710| 07 00 00 00 04 00 01 00 | 08 00 0a 00 00 00 d1 00 |........|........|
|00000720| 05 00 05 00 00 00 7d 2a | c7 00 0b bb 00 08 59 b7 |......}*|......Y.|
|00000730| 00 0f bf bb 00 10 59 b7 | 00 12 4c 03 3d 2a 10 3d |......Y.|..L.=*.=|
|00000740| 1c b6 00 16 3e a7 00 55 | 2a 10 26 1c b6 00 16 36 |....>..U|*.&....6|
|00000750| 04 15 04 02 a0 00 09 2a | b6 00 1c 36 04 1d 15 04 |.......*|...6....|
|00000760| a3 00 07 1d 9c 00 13 2b | 2a 1c 15 04 b8 00 20 12 |.......+|*..... .|
|00000770| 21 b8 00 26 a7 00 21 2b | 2a 1c 1d b8 00 20 2a 1d |!..&..!+|*.... *.|
|00000780| 04 60 15 04 b8 00 20 b8 | 00 26 2a 10 3d 15 04 04 |.`.... .|.&*.=...|
|00000790| 60 b6 00 16 3e 15 04 04 | 60 3d 1c 2a b6 00 1c a1 |`...>...|`=.*....|
|000007a0| ff a9 2b b0 00 00 00 01 | 00 0b 00 00 00 42 00 10 |..+.....|.....B..|
|000007b0| 00 00 00 4c 00 04 00 4d | 00 0c 00 4f 00 14 00 51 |...L...M|...O...Q|
|000007c0| 00 16 00 52 00 1e 00 53 | 00 1e 00 55 00 21 00 57 |...R...S|...U.!.W|
|000007d0| 00 2a 00 58 00 30 00 59 | 00 36 00 5b 00 40 00 5d |.*.X.0.Y|.6.[.@.]|
|000007e0| 00 50 00 63 00 63 00 6b | 00 6e 00 6d 00 7b 00 6f |.P.c.c.k|.n.m.{.o|
|000007f0| 00 0a 00 24 00 25 00 01 | 00 0a 00 00 00 79 00 06 |...$.%..|.....y..|
|00000800| 00 05 00 00 00 3d 2a 2b | b6 00 2a c0 00 2b 4e 2d |.....=*+|..*..+N-|
|00000810| be 04 60 bd 00 17 3a 04 | 2d 03 19 04 03 2d be b8 |..`...:.|-....-..|
|00000820| 00 30 19 04 2d be 2c 53 | 2a 2b 19 04 b6 00 36 57 |.0..-.,S|*+....6W|
|00000830| a7 00 12 4e 2a 2b 04 bd | 00 17 59 03 2c 53 b6 00 |...N*+..|..Y.,S..|
|00000840| 36 57 b1 00 01 00 00 00 | 2a 00 2d 00 37 00 01 00 |6W......|*.-.7...|
|00000850| 0b 00 00 00 22 00 08 00 | 00 00 76 00 00 00 77 00 |...."...|..v...w.|
|00000860| 09 00 78 00 12 00 79 00 | 1c 00 7a 00 22 00 7b 00 |..x...y.|..z.".{.|
|00000870| 2e 00 7d 00 3c 00 7f 00 | 0a 00 1e 00 1f 00 02 00 |..}.<...|........|
|00000880| 07 00 00 00 04 00 01 00 | 08 00 0a 00 00 00 e1 00 |........|........|
|00000890| 06 00 07 00 00 00 7d bb | 00 39 59 1c 1b 64 b7 00 |......}.|.9Y..d..|
|000008a0| 3d 4e 1b 36 05 a7 00 64 | 2a 15 05 b6 00 41 36 04 |=N.6...d|*....A6.|
|000008b0| 15 04 10 2b a0 00 0d 2d | 12 42 b6 00 47 57 a7 00 |...+...-|.B..GW..|
|000008c0| 48 15 04 10 25 a0 00 3a | 2d 2a 15 05 04 60 15 05 |H...%..:|-*...`..|
|000008d0| 06 60 b6 00 4b 10 10 b8 | 00 4f 92 b6 00 54 57 a7 |.`..K...|.O...TW.|
|000008e0| 00 17 3a 06 bb 00 08 59 | b7 00 0f bf 3a 06 bb 00 |..:....Y|....:...|
|000008f0| 08 59 b7 00 0f bf 15 05 | 05 60 36 05 a7 00 0a 2d |.Y......|.`6....-|
|00000900| 15 04 b6 00 54 57 84 05 | 01 15 05 1c a1 ff 9c 2d |....TW..|.......-|
|00000910| b6 00 5c b0 00 02 00 31 | 00 48 00 4b 00 55 00 31 |..\....1|.H.K.U.1|
|00000920| 00 48 00 55 00 57 00 01 | 00 0b 00 00 00 42 00 10 |.H.U.W..|.....B..|
|00000930| 00 00 00 9a 00 0b 00 9b | 00 0b 00 9c 00 0b 00 9c |........|........|
|00000940| 00 11 00 9d 00 19 00 9e | 00 20 00 9f 00 2a 00 a0 |........|. ...*..|
|00000950| 00 31 00 a1 00 31 00 a2 | 00 4d 00 a4 00 57 00 a6 |.1...1..|.M...W..|
|00000960| 00 5f 00 a8 00 68 00 aa | 00 6f 00 9c 00 78 00 ad |._...h..|.o...x..|
|00000970| 00 09 00 5d 00 5e 00 02 | 00 07 00 00 00 04 00 01 |...].^..|........|
|00000980| 00 08 00 0a 00 00 00 57 | 00 05 00 04 00 00 00 27 |.......W|.......'|
|00000990| 1a bc 08 4d 2b 2c 03 2c | be b6 00 62 57 a7 00 0e |...M+,.,|...bW...|
|000009a0| 4e bb 00 08 59 12 65 b7 | 00 69 bf bb 00 17 59 2c |N...Y.e.|.i....Y,|
|000009b0| b7 00 6e b8 00 70 b0 00 | 01 00 04 00 0d 00 10 00 |..n..p..|........|
|000009c0| 6a 00 01 00 0b 00 00 00 | 16 00 05 00 00 00 bd 00 |j.......|........|
|000009d0| 04 00 be 00 04 00 bf 00 | 11 00 c1 00 1b 00 c3 00 |........|........|
|000009e0| 09 00 71 00 72 00 01 00 | 0a 00 00 00 8a 00 03 00 |..q.r...|........|
|000009f0| 03 00 00 00 4e bb 00 39 | 59 12 21 b7 00 73 4c 2b |....N..9|Y.!..sL+|
|00000a00| 2a b9 00 76 01 00 b6 00 | 47 57 2b 12 79 b6 00 47 |*..v....|GW+.y..G|
|00000a10| 57 2b 2a b9 00 7d 01 00 | b6 00 47 57 2a b9 00 80 |W+*..}..|..GW*...|
|00000a20| 01 00 3d 1c 10 50 9f 00 | 10 2b 12 81 b6 00 47 57 |..=..P..|.+....GW|
|00000a30| 2b 1c b6 00 85 57 2b 2a | b9 00 88 01 00 b6 00 47 |+....W+*|.......G|
|00000a40| 57 2b b0 00 00 00 01 00 | 0b 00 00 00 2a 00 0a 00 |W+......|....*...|
|00000a50| 00 00 cf 00 0a 00 d0 00 | 15 00 d1 00 1c 00 d2 00 |........|........|
|00000a60| 27 00 d3 00 2e 00 d4 00 | 34 00 d5 00 3b 00 d6 00 |'.......|4...;...|
|00000a70| 41 00 d8 00 4c 00 df 00 | 01 00 0d 00 0e 00 01 00 |A...L...|........|
|00000a80| 0a 00 00 00 21 00 01 00 | 01 00 00 00 05 2a b7 00 |....!...|.....*..|
|00000a90| 89 b1 00 00 00 01 00 0b | 00 00 00 0a 00 02 00 00 |........|........|
|00000aa0| 00 32 00 04 00 33 00 01 | 00 8a 00 00 00 02 00 8b |.2...3..|........|
+--------+-------------------------+-------------------------+--------+--------+